July 20, 2017

Why visualize disk latency data?

Virtualization systems trend to have a massive amount of disks, both virtual and physical, often making difficult to distribute the load evenly across physical disks. Latency data like in the sample below can be easily summarized, but as the number of disks increases methods like spreadsheets or pivot tables are unpractical for an efficient analysis.

              Sample                                
Value         "0"                                   
Timestamp     "1499839200"                          
MetricId      "virtualdisk.totalreadlatency.average"
Server        "server1"                             
Instance      "scsi0:0"                             
Disk_num      "0"                                   
Disk          "Hard disk 1"                         
StorageFormat "Thick"                               
DiskType      "Flat"                                
CapacityGB    "22"                                  
Lun           "LUN1"                                
Lun_Cap_GB    "2047.75"                             
Lun_Free_GB   "709.287109375"                       

Latency Distribution:

This plot shows each virtual disk's latency stacked per LUN (physical disk), making very easy to quickly find what LUNs/Virtual disks are overloaded and decide where to migrate virtual disks among other LUNs to spread the load evenly. It also supports LUN/time frame filtering.

Latency Trend:

This plot shows the latency trend per LUN (physical disk) helping to visualize the latency variance over the time allowing to easily forecast when disks migrations might be necessary. Same as the distribution plot it also supports LUN/time frame filtering.

LUN/Time frame filtering:

These two options allow to focus the analysis in an specific set of LUNs and time frame, to do so simply type a regular expression to filter the LUNs names and use the slider to limit the report to the desired time span.
Note: The source code and files for this project can be found here and the Shinyapp is hosted here.